其他
codeql使用(一)
最近重新开始学习 codeql。很看好它。今天主要是安装,然后用它内置的查询语句试了试我自己的项目
codeql 安装
1.安装命令行 codeql-cli 下载地址:https://github.com/github/codeql-cli-binaries/releases 下载完,解压。添加到 path 目录,设置为全局变量。
2.安装 codeql 查询引擎 下载地址:https://github.com/github/codeql/releases 下载完 解压。和 codeql-cli 同一目录下(因为 codeql-cli 把同层目录作为查找路径),并将 codeql-cli 放在系统目录中
3.安装 vscode 插件 codeql,并且在 codeql 插件设置里填 codeql-cli 地址
注意点
1.你的项目编译工具比如我的项目需要 mvn,你电脑上得提前安装好 Mvn 并且设置好全局变量。mvn 里 jdk 版本要和项目 Pom 文件里需要的一致不然会编译失败
codeql 使用
codeql 使用顺序 首先生成(创建)特有的数据库 然后用自己写好的查询语句 去执行这个数据库
常用命令
创建数据库 :codeql database create source_database_name --language=""
下面是我的java项目生成数据库命令
codeql database create D:/codeview/database3 --language="java" --command="mvn clean install --file pom.xml -Dmaven.test.skip=true" --source-root=C:/Users/xx/Desktop/codeview/RefiningStone-RBAC/ --overwrite
查询语句 codeql analyze 命令可以执行单个 ql 文件 目录下所有 ql 文件 查询 suite(.qls)
codeql database analyze source_database_name codeql-main\java\ql\src\codeql-suites\java-code-scanning.qls --format=csv --output=java-results.csv
如我使用 java 语言内置的所有查询语句。根据不同语言写不同查询语句
codeql database analyze database3 D:\codeview\codeql\codeql-main\java\ql\src\codeql-suites\java-code-scanning.qls --format=csv --output=java-results.csv
使用结果
它只找到两个漏洞
* 1.CSRF vulnerability due to protection being disabled.
* 2.Use of a broken or risky cryptographic algorithm
待续……